home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 1 / Cream of the Crop 1.iso / PROGRAM / VS_804.ARJ / MISC.EXE / FUNC2NG.PRG < prev    next >
Text File  |  1991-11-04  |  4KB  |  159 lines

  1. * Filename......: Func2Ng.Prg
  2. *
  3. * Author........: Vernon E. Six, Jr.
  4. *                 2908 Forest Hollow Lane #2329
  5. *                 Arlington, Texas  76006
  6. *                 Ph: (214) 283-3282 - Voice
  7. *                 Ph: (817) 695-0058 - BBS
  8. *
  9. * Last Update...: Wed  10-02-1991  11:28:17
  10. *
  11. * Notice........: Copyright (c) 1991 by Vernon E. Six, Jr.
  12. *                 All Rights Reserved World Wide
  13. *
  14.  
  15. #include "FILEIO.CH"
  16. #include "SETCURS.CH"
  17. #include "SET.CH"
  18.  
  19. STATIC gn_CurrLine := 0
  20.  
  21. FUNCTION Func2Ng( pc_FileName )
  22. *****
  23. *
  24. * Create a Norton Guides DAT file
  25. *
  26. * Requires FuncDoc.Dbf
  27. *
  28. *     # Field Name Type  Len   Dec
  29. *   --------------------------------
  30. *     1 FUNC_NAME    C    10    0
  31. *     2 SHORT        C    45    0
  32. *     3 DESC         M    10    0
  33. *     4 SYNTAX       M    10    0
  34. *     5 PASS         M    10    0
  35. *     6 RETURN       M    10    0
  36. *     7 NOTES        M    10    0
  37. *     8 EXAMPLE      M    10    0
  38. *     9 USAGE        M    10    0
  39. *    10 SEEALSO      M    10    0
  40. *
  41. *****
  42. LOCAL c_FileName
  43. LOCAL n_Handle
  44. LOCAL n_CurrRec  := 0
  45.  
  46.    SET(_SET_DELETED,.T.)
  47.  
  48.    VS_InitVern()
  49.    VS_NewScrn()
  50.  
  51.    *****
  52.    * Make sure he specified a filename
  53.    *****                              
  54.    IF PCOUNT() = 0
  55.       VS_TELL(3,0,"",PADC("Proper Syntax is: Func2Ng {FileName} [Return]",60),"")
  56.       RETURN(NIL)
  57.    ENDIF
  58.                                       
  59.    dbUseArea(,,pc_FileName,"FUNC_DOC")
  60.    dbCreateIndex( pc_FileName, "FUNC_NAME", {||FUNC_NAME}, .F. )
  61.    dbGoTop()
  62.  
  63.    *****
  64.    * Open the .DATE file (since we are going to create it!)
  65.    *****
  66.    c_FileName = ALLTRIM(pc_FileName)+".DAT"
  67.  
  68.    IF (n_Handle := FCREATE( c_FileName, 0 ) ) = F_ERROR
  69.       VS_TELL(3,0,PADC("Unable to create "+c_FileName))
  70.       RETURN(NIL)
  71.     ELSE
  72.       VS_Write(n_Handle)     
  73.    ENDIF
  74.  
  75.    VS_GrabScr()
  76.  
  77.       VS_Palette(2)
  78.       VS_NewScrn()
  79.  
  80.       VS_Wind(8,13,16,66,"","")
  81.  
  82.       SETCURSOR(SC_NONE)
  83.  
  84.       @ 10,15 SAY PADC("Fung2Ng.Exe      Wed  10-02-1991  11:51:11",50)
  85.  
  86.       @ 12,15 SAY PADC("Writing Data File!",50)
  87.  
  88.       @ 14,15 SAY REPLICATE("░",50)
  89.                
  90.       DO WHILE .NOT. FUNC_DOC->( EOF() )
  91.  
  92.          IF INKEY(.05) > 0
  93.             EXIT
  94.          ENDIF
  95.  
  96.          n_CurrRec++
  97.  
  98.          @ 14,15 SAY REPLICATE("█", VS_ScrlBar( n_CurrRec, 50, RECCOUNT() ))
  99.  
  100.          VS_WriteLn( "'" + REPLICATE("=",70) )
  101.  
  102.          VS_WriteLn( "!short: " + FUNC_DOC->FUNC_NAME + SPACE(6) + ;
  103.                      FUNC_DOC->SHORT )
  104.  
  105.          VS_WriteLn( "^B" + FUNC_DOC->FUNC_NAME + "^B" + SPACE(6) + ;
  106.                      FUNC_DOC->SHORT )
  107.  
  108.          VS_WriteLn( [] )
  109.  
  110.          gn_CurrLine = 7
  111.  
  112.          WrtFld( "Description:", FUNC_DOC->DESC    )
  113.          WrtFld( "Syntax:     ", FUNC_DOC->SYNTAX  )
  114.          WrtFld( "Pass:       ", FUNC_DOC->PASS    )
  115.          WrtFld( "Return:     ", FUNC_DOC->RETURN  )
  116.          WrtFld( "Notes:      ", FUNC_DOC->NOTES   )
  117.          WrtFld( "Example:    ", FUNC_DOC->EXAMPLE )
  118.          WrtFld( "Usage:      ", FUNC_DOC->USAGE   )
  119.          WrtFld( "!Seealso:",    FUNC_DOC->SEEALSO )
  120.  
  121.          FUNC_DOC->( dbSkip() )
  122.  
  123.       ENDDO
  124.  
  125.       FCLOSE( n_Handle )
  126.  
  127.    VS_PutScr()
  128.  
  129.    dbCloseAll()
  130.  
  131. RETURN(NIL)
  132. *** EOF: Func2Ng() **********************************************************
  133.  
  134. FUNCTION WrtFld( pc_Hdr, pc_Text )
  135. *****
  136. * Prints the specified memo field
  137. *****
  138. LOCAL n_Cntr
  139.  
  140.    IF pc_Hdr <> "!Seealso:"
  141.       VS_WriteLn( "^B" + pc_Hdr + "^B" )
  142.       VS_WriteLn( []                   )
  143.     ELSE
  144.       VS_Write  ( "!Seealso: "         )
  145.    ENDIF
  146.  
  147.    FOR n_Cntr = 1 TO MLCOUNT(pc_Text,70)
  148.  
  149.       VS_WriteLn( SPACE(2) + MEMOLINE( pc_Text, 70, n_Cntr ) )
  150.  
  151.    NEXT n_Cntr
  152.  
  153.    VS_WriteLn( [] )
  154.  
  155. RETURN(NIL)
  156. *** EOF: WrtFld() ***********************************************************
  157.  
  158.  
  159.